Skip to content

feat(nimbus): Support Firefox Labs on Fenix#16200

Merged
freshstrangemusic merged 1 commit into
mainfrom
freshstrangemusic/push-mnyqkqrkxtvo
Jul 8, 2026
Merged

feat(nimbus): Support Firefox Labs on Fenix#16200
freshstrangemusic merged 1 commit into
mainfrom
freshstrangemusic/push-mnyqkqrkxtvo

Conversation

@freshstrangemusic

Copy link
Copy Markdown
Member

Because:

  • Fenix supports Firefox Labs as of Firefox 154+;
  • the constants the controlled in what applications supported Firefox Labs were spread across NimbusConstants instead of being associated with the application configuuration; and
  • Firefox version constants were declared quite late in NimbusConstants, making them unavailable to ApplicationConfig inststances

this commit:

  • refactors NimbusConstants.Version into experimenter.experiments.versions;
  • refactors all the Firefox Labs fields in NimbusConstants into a new dataclass that is used with ApplicationConfig;
  • updates Firefox Desktop and Fenix's application configs to use the new FirefoxLabs dataclass;
  • updates branches form rendering to conditionally render Firefox Labs fields when supported in the application config;
  • updates available choices for firefox_labs_group to be based on the application; and
  • updates the existing unit tests to be generic across all Firefox Labs-supporting applications.

Fixes #16199

@jaredlockhart jaredlockhart left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Generally looks good, some thoughts about the test setups.

@freshstrangemusic freshstrangemusic force-pushed the freshstrangemusic/push-mnyqkqrkxtvo branch 6 times, most recently from 0f10427 to 14ccbce Compare July 3, 2026 21:50
@freshstrangemusic

Copy link
Copy Markdown
Member Author

@jaredlockhart i split apart all the huge generators into multiple indivudal tests

@freshstrangemusic freshstrangemusic force-pushed the freshstrangemusic/push-mnyqkqrkxtvo branch 6 times, most recently from dedda50 to 583d879 Compare July 6, 2026 15:05
Because:

- Fenix supports Firefox Labs as of Firefox 154+;
- the constants the controlled in what applications supported Firefox
  Labs were spread across `NimbusConstants` instead of being associated
  with the application configuuration; and
- Firefox version constants were declared quite late in
  `NimbusConstants`, making them unavailable to `ApplicationConfig`
  inststances

this commit:

- refactors `NimbusConstants.Version` into
  `experimenter.experiments.versions`;
- refactors all the Firefox Labs fields in `NimbusConstants` into a new
  dataclass that is used with `ApplicationConfig`;
- updates Firefox Desktop and Fenix's application configs to use the new
  FirefoxLabs dataclass;
- updates branches form rendering to conditionally render Firefox Labs
  fields when supported in the application config;
- updates available choices for firefox_labs_group to be based on the
  application; and
- updates the existing unit tests to be generic across all Firefox
  Labs-supporting applications.

Fixes #16199
@freshstrangemusic freshstrangemusic force-pushed the freshstrangemusic/push-mnyqkqrkxtvo branch from 583d879 to 2c5c6ee Compare July 6, 2026 17:04

@yashikakhurana yashikakhurana left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you @freshstrangemusic this looks good to me, great test coverage 🎉

@freshstrangemusic freshstrangemusic added this pull request to the merge queue Jul 8, 2026
Merged via the queue into main with commit 92faab9 Jul 8, 2026
26 checks passed
@freshstrangemusic freshstrangemusic deleted the freshstrangemusic/push-mnyqkqrkxtvo branch July 8, 2026 18:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Enable Firefox Labs for Fenix in Experimenter

3 participants